<!-- 部门经理审批页面 -->
<template>
	<view class="page_all">
		<view class="page_titleArea">
			<view class="page_title_line">
				<view class="page_title_line_left" @click="leftClick()"><image src="../../static/all/back_white.png" style="width:50rpx;height:50rpx;"></image></view>
				<view class="page_title_line_middle">部门经理审核</view>
				<view class="page_title_line_left"></view>
			</view>
		</view>
		<view class="page_contentArea" style="background-color:#F7F7F7;">
			<!--审核意见输入块-->
			<view class="space_15"></view>
			<view class="input_box"> 
				<view class="input_box_title">
					<view class="input_box_title_L">
						<image src="../../static/all/r_shenhe.png" style="width:45rpx;height:45rpx;"></image>
						<span style="padding: 10rpx;"></span>审核意见：
					</view>
					<view class="input_box_title_R"></view>
				</view>
				<view class="input_line1">
					<u-radio-group v-model="form_task_progress.status" placement="row" @change="showRemark()">
						<!-- <u-radio :customStyle="{marginLeft:'50px'}" v-for="(item, index) in radio_shenhe" 
						         :key="index" :label="item.name" :name="item.value" iconSize="16px" labelSize="16px"></u-radio> -->
						<u-radio :customStyle="{marginLeft:'50px'}" v-for="(item, index) in radio_shenhe"
						         :key="index" :label="item.name" :name="item.value" size="26"></u-radio>
					</u-radio-group>
				</view>
				<view class="space_1"></view>
			</view>
			<!--驳回原因输入块-->
			<view class="input_box" v-if="isShowRemark">
				<view class="input_box_title">
					<view class="input_box_title_L">
						<image src="../../static/all/r_bohui.png" style="width:45rpx;height:45rpx;"></image>
						<span style="padding: 10rpx;"></span>驳回原因
					</view>
					<view class="input_box_title_R"></view>
				</view>
				<view class="input_textarea"> <!--注意：输入框的边框颜色自定义样式，必须用:styles (加s)-->
					<uni-easyinput type="textarea" v-model="form_task_progress.remark" :styles="styles" :placeholderStyle="placeholderStyle"
					               placeholder="请输入驳回原因"></uni-easyinput>
				</view>
				<view class="space_35"></view>
			</view>
			<view class="space_180"></view>
			<!--提交按钮行-->
			<view v-if="btn==1" class="form_btn" @click="form_task_progress_submit()">提<span style="padding:30rpx;"></span>交</view>
			<view v-if="btn==0" class="form_btn btn_notClick">提交中……</view>
			<view class="space_80"></view>
		</view>
	</view>
</template>

<script>
	import utils from "@/utils/business/services.js";
	export default {
		data() {
			return {
				//控件的样式
				placeholderStyle: "color:#A9A9A9;font-size:30rpx", 
				styles: {
					disableColor: '#FFF',
					borderColor: '#87CEFA', //文本框边框颜色
				},
				/***************************以下是任务审核相关变量****************************/
				accessTaskId: "", //用于接收页面传参（申请单任务id）
				
				form_task_progress: {
					accessTaskId: '', //任务id（新增时用）
					remark: '', //审核拒绝时需要填写原因
					status: '', //部门审核结论
				},
				//排列形式数据
				radio_shenhe: [
					{
						name: '通过',
						value: "approve",
					},
					{
						name: '驳回',
						value:"reject",
					},
				],
				isShowRemark:false, //是否显示未通过原因项
				/***************************以上是任务审核相关变量****************************/
				//防重复提交
				btn: 1, //0：不可用  1：可用（默认可用）
				
				//在此之上补充变量
			}
		},
		watch: {},
		onLoad(option) {
			getApp().globalData.query_flag=0; //在子页面（提交成功后需要刷新父页面）中将刷新控制变量置为0
			
			if(JSON.stringify(option)!="{}"){
				this.accessTaskId=option.accessTaskId;
			}
		},
		onShow() {},
		methods: {
			/******************************以下是通用方法*********************************/
			//顶部导航回退箭头点击触发
			leftClick(){
				utils.pageBack();
			},
			//隐藏系统键盘
			hideKeyboard() {
				uni.hideKeyboard();
			},
			/******************************以上是通用方法*********************************/
			/******************************以下是业务方法*********************************/
			//根据审核结论判断是否显示审核未通过原因项
			showRemark(){
				this.form_task_progress.remark=""; //先置空
				if(this.form_task_progress.status=="approve"){ //通过
					this.isShowRemark=false;
				}
				if(this.form_task_progress.status=="reject"){ //驳回（拒绝）
					this.isShowRemark=true;
				}
			},
			//主提交方法
			form_task_progress_submit(){
				var that=this;
				if(that.form_task_progress.status==""){ //校验空值
					uni.showModal({
						title: '提示',
						content: '请选择审核意见！',
						showCancel:false,
						success: function (res) {
							if(res.confirm){} 
						}
					}); //uni.showModal结束
					return;
				}
				if(that.form_task_progress.status=="reject"){ //驳回（拒绝）
					if(that.form_task_progress.remark==""){ //驳回时需填写原因
						uni.showModal({
							title: '提示',
							content: '请填写驳回原因！',
							showCancel:false,
							success: function (res) {
								if(res.confirm){} 
							}
						}); //uni.showModal结束
						return;
					}
				}
				that.form_task_progress.accessTaskId=that.accessTaskId;
				console.log("部门审核提交的参数==",that.form_task_progress);
				uni.showModal({
						title: '提示',
						content: '确定提交审核意见吗？',
						success: function(res) {
							if (res.confirm) {
								that.btn=0; //按钮置为不可用
								utils.locApproveEvent(that.form_task_progress).then(res => {
									console.log('部门提交审核接口的返回值==',res); 
									that.btn=1; //无论成功与否按钮均置为可用
									if(res.data.status=="success"){
										getApp().globalData.query_flag=1; //查询全局控制变量(避免列表页面重复查询2次)
										uni.showToast({
											title:'审核完成！',
											icon: 'success'
										});
										setTimeout(() => {
											//关闭当前页，刷新列表页面
											utils.pageBack();
										}, 1000); //显示toast 500毫秒之后执行
									}
									if(res.data.status=="error"){
										let msg=res.data.message;
										uni.navigateTo({
											url:'/pages/error/error?errorMsg='+msg 
										}) 
									}
								}).catch(error => {
									uni.navigateTo({
										url:'/pages/error/error?errorMsg='+error
									})
								})
							} 
							else {
								//执行取消后的操作
							}
						}
					})//uni.showModal结束
			},
			/******************************以上是业务方法**********************************/
			/*********************在此之上补充方法**********************/
		},
	}
</script>
<style lang="scss">
@import '../../common/css/page.css'; 
@import '../../common/css/b_form.css';
@import '../../common/css/review.css';
</style>